Method, system, and graphical user interface for dynamically updating transmission characteristics in a web mail reply

ABSTRACT

A method, system and graphical user interface for dynamically updating transmission characteristics in a web mail reply are described. In one embodiment of the invention, a graphical user interface includes a web mail reply form that includes: one or more address fields; an input area for inputting a reply message; and a plurality of response options selectable by a user. In response to selection of a response option by a user, one or more of the address fields in the reply form are changed while maintaining the reply message in the input area.

RELATED APPLICATIONS

This application is a divisional of pending U.S. patent application Ser.No. 10/815,284, filed Mar. 31, 2004, which is incorporated herein byreference in its entirety.

This application is related to pending U.S. patent application Ser. No.10/816,428, “Email System with Conversation-Centric User Interface”,filed Mar. 31, 2004, and U.S. patent application Ser. No. 10/816,427,“Email Conversation Management System”, filed Mar. 31, 2004. Thedisclosures of all of the foregoing applications are incorporated hereinin their entirety by reference.

TECHNICAL FIELD

The present invention relates generally to Internet technology, and moreparticularly, to electronic mail (email) technology.

BACKGROUND

The importance of email technology in society today is well known. Emailapplications have become a common tool in both business and personalcommunication. A significant factor in the widespread adoption of emailtechnology is the relative ease with which individuals may communicateusing email. An individual may quickly communicate a message to one ormore individuals by simply inputting the message and the recipients'email address into an email application and clicking a mouse button. Oneof the primary reasons email is so attractive is that the messages aretypically delivered within seconds of being sent.

FIG. 1 illustrates an exemplary network on which email messaging mayoccur. As shown, each of the computer clients, Client A 120, Client B121, Client C 122, and Client D 123, are coupled to a network 100. Thisnetwork may be a private network, a public network such as the Internet,or a combination thereof. The computer clients (120, 121, 122, 123) areable to communicate with each other through virtual connections overnetwork 100. These virtual connections allow the clients (120, 121, 122and 123) to send and receive electronic mail messages from the otherclients.

Many email users access their email through web mail applications whichdisplay a user's email inbox and the corresponding email messages in aweb page environment. One of the advantages of web mail applications isthat the user may access their email from any location that providesaccess to the World Wide Web. When a user logs into their email account,they are typically presented with an inbox view that provides a list ofthe various email messages the user has received. When the user selectsa particular email message, for example, by clicking on the messagewithin the list, a request is sent to a web server requesting theselected message. The server responds with the email message which isdisplayed to the user as a new web page.

Typically, the web page displaying the message includes one or moreresponse options. Examples of response options include Reply,Reply-to-All and Forward. These response options are usually presentedto the user as links or buttons that the user may select. Reply allowsthe user to reply to the originator of the message. Reply-to-All allowsthe user to reply to all of the recipients of the message. The Forwardoption allows the user to forward the email to a user who was not one ofthe original recipients of the message.

When a user selects one of the response options in a web based emailapplication, a request is sent to a remote email server requesting thereply web page corresponding to the selected response option. This pagetypically includes a text box for inputting the reply message and one ormore address fields for inserting the recipient addresses. When the userselects the Reply or Reply-to-All option, the server typically insertsthe appropriate recipient address information into the address fields.

Typically, a user must choose the response option at the time he decidesto respond to the email. If the user later changes his mind and wants toselect a different response option, he cannot do so from the reply webpage returned by the server. In order to select a different responseoption, the user would have to return to the original message web page.This process may result in multiple requests to the server whichincreases web traffic and adds additional latency to the userexperience. If the user provides part or all of a response message intothe reply web page before changing his mind on the response options, theuser would lose the message unless he copied the message beforereturning to the original message and pasted it into the new reply webpage returned by the server upon selecting the new response option.

These same limitations are also present in client-side emailapplications such as Microsoft Outlook. When the user selects aparticular response option, a new message window is created includingthe recipient addresses associated with the response option. However, ifthe user wishes to change to a different response option, the user mustclose the window and select a different response option. Theseapplications do not provide the user with a mechanism to dynamicallychange the response option for his message. As a result, if the user hasprovided part or all of a message prior to deciding to select adifferent response option, the user must either copy the message andpaste it into the new reply window, or must manually enter theadditional recipient addresses.

Accordingly, what is desirable are improved systems and methods foraddressing the above-described limitations of prior systems.

SUMMARY

The present invention provides a system and method for dynamicallyupdating the recipient email addresses of a response message in responseto a user selection of a response option. In one embodiment, a replyform may be provided as an interface to respond to an email message. Thereply form may comprise a text box for inputting a response message anda recipient email address box for inputting the email addresses of theintended recipients of the response message. In one embodiment, aplurality of response options may be provided with the reply form. Whena user selects a response option, the recipient addresses of theresponse message may be dynamically updated with the email addressesassociated with the response option.

BRIEF DESCRIPTION OF THE DRAWINGS

For a better understanding of the aforementioned aspects of theinvention as well as additional aspects and embodiments thereof,reference should be made to the Description of Embodiments below, inconjunction with the following drawings in which like reference numeralsrefer to corresponding parts throughout the figures.

FIG. 1 illustrates an exemplary block diagram of a network on whichemail messages may be transmitted.

FIG. 2A illustrates a reply form 200 according to one embodiment of theinvention.

FIG. 2B illustrates a minimized reply form 215 according to oneembodiment of the invention.

FIG. 2C illustrates a reply form 200 with a response message accordingto one embodiment of the invention.

FIG. 2D illustrates a reply form 295 that has been torn away from thewindow displaying the original email message.

FIG. 3A illustrates a reply form 200 wherein the recipient addresseshave been updated in response to a selection of a response optionaccording to one embodiment of the invention.

FIG. 3B illustrates a reply form 200 following the sending of a responsemessage according to one embodiment of the invention.

FIG. 4A illustrates a reply form 400 with response buttons according toone embodiment of the invention.

FIG. 4B illustrates a reply form according to one embodiment of theinvention.

FIG. 5 illustrates an email thread 500 according to one embodiment ofthe invention.

FIG. 6A illustrates an email thread 500 with a dynamically insertedreply form 200 according to one embodiment of the invention.

FIG. 6B illustrates an email thread 500 with an inserted responsemessage according to one embodiment of the invention.

FIG. 7 is a flowchart for updating the recipient addresses of a responseemail in response to user selection of a response option according toone embodiment of the invention.

DESCRIPTION OF EMBODIMENTS

An apparatus and method for dynamically updating at lease one emailtransmission characteristic of a reply form without modifying the textmessage within the reply form is described. Email transmissioncharacteristics include but are not limited to the recipient addressesof the response message, security parameters, quality of servicecharacteristics or the priority level assigned to the response message.One skilled in the art will recognize that there are a number of emailtransmission characteristics that may be modified according to thepresent invention.

In one embodiment, the recipient addresses of a response message may bedynamically updated in response to a user selection of one of aplurality of response options. In one embodiment, a reply formassociated with a received email message may be displayed to a user. Thereply form may include multiple response options, a text box forinputting the response message and one or more address fields for addingand or editing the email addresses of the intended recipients of theresponse message. In response to a user selection of a response option,the recipient addresses of the response message may be dynamicallypopulated based upon the selected response option.

In the following description, for purposes of explanation, specificdetails are set forth in order to provide an understanding of theinvention. It will be apparent, however, to one skilled in the art thatthe invention can be practiced without these details. Furthermore, oneskilled in the art will recognize that embodiments of the presentinvention, exemplary ones of which are described below, may be utilizedin any electronic mail application. Accordingly, structures and devicesshown below in block diagram are illustrative of specific embodiments ofthe invention and are meant to avoid obscuring the invention.

Reference in the specification to “one embodiment,” “this embodiment” or“an embodiment” means that a particular feature, structure,characteristic, or function described in connection with the embodimentis included in at least one embodiment of the invention. The appearancesof the phrase “in one embodiment” or “in an embodiment” in variousplaces in the specification are not necessarily all referring to thesame embodiment.

FIG. 2A illustrates an exemplary reply form 200 according to oneembodiment of the invention. Reply form 200 may provide an interface forthe user to respond to a previously received email message 210. Replyform 200 may be located within the same window or document (e.g. webpage) as the received email message. Reply form 200 may include acontent area, such as text box 220, for typing or otherwise inputtingthe response message, a subject box 230 for entering a subject for theresponse message, and one or more recipient address boxes for insertingthe email addresses of the recipients to which the user wishes to sendthe response message. In the embodiment illustrated in FIG. 2A, replyform 200 may include two recipient address boxes, 240 and 250. Replyform 200 may also include resize options that allow the user todynamically resize reply form 200 or text box 220. In one embodiment,resize buttons 235 and 245 may be selected by the user to increase orreduce the number of lines of text available in reply form 200 or textbox 220. Software code may detect a user selection of resize button 235or 245 and may dynamically add or subtract a predefined number of linesof text from text box 220 within reply form 200. Alternatively, acontrol corner 225 may be provided to the user which the user may selectand drag across the screen to increase the size of reply form 200 ortext box 220. Reply form 200 may also include multiple response options.In one embodiment, reply form 200 may include three response options,Reply 260, Reply-to-All 270 and Forward 280.

In one embodiment, email message 210 is the message the user isresponding to using reply form 200. As illustrated in FIG. 2A, emailmessage 210 was sent to the user from Tim@example.com. In addition, Timcopied, denoted by “Cc:,” Brad@example.com and Greg@example.com. Thus,Brad, Greg and the user each received a copy of email message 210.

Reply form 200 may be generated to allow the user to respond to emailmessage 210 and may be displayed in the same window or document (e.g.web page) as email message 210. In an alternative embodiment, reply form200 may be displayed in a separate window or frame from email address210. In one embodiment, illustrated in FIG. 2B, a minimized reply form215 may be inserted below email message 210. Minimized reply form 215may include response options 260, 270 and 280 as discussed herein alongwith a small text box 217. In response to a user selection of one of theresponse options or in response to a user click in the text box 217,software code may detect the user selection or click and dynamicallyinsert reply form 200 and/or an expanded text box 220 in place ofminimized reply form 215 with minimized text box 217. In yet anotherembodiment, the software may expand the minimized reply form 215 bydynamically inserting additional lines into the text box 217 ofminimized reply form 215.

In the embodiment illustrated in FIG. 2A, response options 260, 270 and280 may be presented as virtual tabs or links so that the user maytoggle between response options. As a user toggles through these tabs, aclient computer may not be required to make a server request in responseto the user selecting these tabs. Rather, software (such as javascript)may be provided on the client computer that detects the user selectionof one of the tabs and populates address boxes 240 and/or 250 with theaddresses corresponding to the selected response option. Thus, the usermay type or enter a response to the email message 210 and define thecharacteristics of the response, such as the recipients of the response,without making a specific server request for the response or a responseform. This reduction in client-server communication may provide a moreefficient email platform in which latency, which is typically caused bygenerating an email response window and populating the correspondingrecipient address field, may be reduced.

Software located on the client computer may also provide a moreefficient email response mechanism for the user by allowing the user totoggle through the virtual tabs while maintaining content within thetext box 220. For example, the user may initially select the Reply tab260 and enter a response to the email message 210 within the text box220. Thereafter, the user may toggle from the Reply tab 260 to theReply-to-All tab 270. The content within the text box 220 may remainafter this toggle without any user action. According to one embodiment,software on the client computer modifies the characteristics of theemail response (i.e., changes from Reply response to Reply-to-Allresponse) without erasing or modifying the content with the emailresponse.

In the example illustrated in FIG. 2A, Reply 260 is the selectedresponse option. In one embodiment, Reply 260 is the default responseoption displayed to the user.

In one embodiment, Reply option 260 may be defined to reply to thesender of the original email message 210. In the embodiment illustratedin FIG. 2A, Tim@example.com sent the email message 210 to which the useris responding so his email address is included in recipient address box240 since the Reply 260 option is selected. In comparison, the responsemessage will not be sent to Brad@example.com or Greg@example.com becausethey were not the original sender of email message 210 and thus are notassociated with the Reply 260 option.

In one embodiment, the user may input a response message in text box 220by clicking text box 220 and inputting the text through a keyboard orother input device. FIG. 2C, illustrates reply form 200 with a responsemessage in text box 220. The response message in text box 220 may not beaffected if the user toggles between the various response options.

As mentioned above, the user may toggle between the various responseoptions in order to change the recipient addresses for the responsemessage. For example, if the user wishes to send the message to Tim,Greg and Brad, the user may select the Reply-to-All option 270 withinreply form 200. In one embodiment, Reply-to-All option 270 is defined tosend the response message to all of the recipients of email message 210.

When the user selects Reply-to-All option 270, software code may detectthe selection and dynamically update address boxes 240 and 250 toinclude the email addresses of the recipients associated with theselected response option. In this example, the software code maypopulate recipient address box 240 with Tim@example.com and may populateaddress box 250 with Greg@example.com and Brad@example.com. Each ofthese email addresses is associated with the Reply-to-All 270 optionsince it is defined to respond to each recipient of email message 210.In one embodiment, the software code may be embedded within the sourcecode that defines reply form 200. In an alternative embodiment, thesoftware code may be embedded within a hidden frame or second window(not shown in FIG. 2A).

The software code may be configured to monitor and/or receive dataregarding user selections within reply form 200. In one embodiment, thesoftware code may parse email message 210 to identify the variousrecipient email addresses. Based on the location within the emailmessage 210 header, the software code may identify which email addressesto associate with each response option. For example, while parsing emailmessage 210, the software code may identify email addresses located inthe “Cc:” field and may assign these addresses to the Reply-to-Alloption 270. As a result, when a user selects Reply-to-All 270, thesoftware code may populate recipient address box 250 of reply form 200with the recipient email addresses parsed from the “Cc:” field of emailmessage 210.

In another embodiment, while parsing email message 210, the softwarecode may identify the email addresses located in the “From:” field ofemail message 210. The software code may associate these email addresseswith the Reply 260 and Reply-to-All 270 options. The “From:” field emailaddresses may be associated with each response option since both aredefined to respond to the sender of the original email message 210. As aresult, when the user selects either of these response options, thesoftware code may populate recipient text box 240 of reply form 200 withthe email addresses parsed from the “From:” field of email message 210.

One skilled in the art will recognize that there are a number of ways toimplement the software code described above. In one embodiment,JavaScript or another scripting language may be used to implement thepresent invention. In one embodiment, the software code may be embeddedwithin the source code that defines reply form 200. In an alternativeembodiment, the software code may be embedded within a hidden frame orsecond window.

In one embodiment of the invention illustrated in FIG. 2C, a tear offlink or button 290 may be included with reply form 200. When a userclicks or otherwise selects tear off button 290, reply form 200 may betorn off of its original display in the same window as email message 210and displayed in a separate window. FIG. 2D illustrates reply form 295displayed in a window separate from email message 210. In oneembodiment, email message 210 may still be displayed in the originalwindow located within web browser 296. This embodiment of the inventionis advantageous because it allows the user to input a response messageinto reply form 295 while being able to navigate the web browser to anew web page. In another embodiment, when reply form 200 is torn awayfrom the original display window, a new reply form 200 may be insertedbelow email message 210, allowing the user to draft a second responsemessage separate from the response message being input into the replyform 295 that was torn away from the original display window.

FIG. 3A illustrates reply form 200 with the recipient addresses updatedin response to the user selection of the Reply-to-All 270 optionaccording to one embodiment of the invention. As discussed above, theReply-to-All 270 option may be defined to send the reply message inputinto reply form 200 to all of the recipients of email message 210. Inthe example illustrated, the recipients associated with Reply-to-Alloption include Tim@example.com, Brad@example.com and Greg@example.com.When the Reply-to-All option 270 was selected by the user, the softwarecode dynamically updated address boxes 240 and 250 with the recipientaddresses associated with Reply-to-All option 270.

In one embodiment of the invention, the user may click or otherwiseselect Send button 290 to send the message input to reply form 200 tothe recipients specified in address boxes 240 and 250. In oneembodiment, software code may detect the user selection of the sendbutton and initiate the transfer of the message to a remote server fordelivery to the specified recipients. In one embodiment, the softwarecode may be embedded within the source code that defines reply form 200.In an alternative embodiment, the software code may be embedded within ahidden frame or second window. In one embodiment, the message may besent without navigating the user to another web page. In other words,during the process of toggling between response options and sending themessage, the same reply form 200 may be displayed to the user.

In one embodiment of the invention, a confirmation message indicatingthat the message has been sent may be inserted in place of the replyform when the message has been sent. In another embodiment, the softwarecode may be configured to remove the contents of text box 220 after theuser has clicked on the send button and the message delivery has beeninitiated. As illustrated in FIG. 3B, the same reply form 200 may bedisplayed to the user with the contents of the text box deleted. As aresult, the user may immediately begin creating a second response email.In one embodiment, reply form 200 maintains the same response option asthe previously sent response message. In the example illustrated, theReply-to-All 270 option remains the selected response option. In analternative embodiment, reply form 200 may automatically toggle back tothe default Reply option 260 after a response message has been sent. Ineither case, the user may again toggle between the various responseoptions by simply selecting one of the other response options.

One skilled in the art will recognize that the invention is not limitedto virtual tabs and that there are a number of other ways to displayresponse options 260, 270 and 280 to a user, including but not limitedto links and buttons. In one embodiment, illustrated in FIG. 4, a replyform 400 may be provided to a user with multiple response optionsprovided to the user as a plurality of response buttons 410, 420, 430and 440 that also initiate the sending of the message. Reply form 400may include a subject box 230 and a text box 220 for inputting aresponse message.

In one embodiment, response button 410 may represent the reply option.When the user selects response button 410, software code may initiatethe sending of the message input into text box 220 to the sender of theoriginal message 210. In this example, Tim@example.com. Response button420 may represent the reply-to-all option. When the user selectsresponse button 420, software code may initiate the sending of themessage input into text box 220 to all of the recipients of the originalmessage 210. In this example, the message would be sent toTim@example.com, Brad@example.com and Greg@example.com.

In yet another embodiment, when the user selects the Edit Recipientsresponse button 430, software code may dynamically insert the To: andCc: address boxes 240 and 250 into reply form 400 along with a Sendbutton as illustrated in FIG. 4B. In one embodiment, address boxes 240and 250 may be populated with the recipient addresses associated with areply-to-all option. The user may edit the addresses, add new addressesor delete one or more addresses from address boxes 240 and 250.

Similarly, when the user selects the Forward response button 440,software code may insert the To: and Cc: address boxes 240 and 250 intoreply form 200 along with a Send button as illustrated in FIG. 4B.However, in this embodiment, address boxes 240 and 250 may be leftempty, allowing the user to input the intended recipients. The softwarecode may also include the text of the original message 210 in text box220 along with a forward header. The forward header may includeinformation identifying the sender of message 210, the date message 210was sent, the subject of message 210 and the recipients of message 210.

FIG. 5 illustrates multiple email messages 510, 520 and 530 that make upan email thread 500. Below each email message 510, 520 and 530 is areply link 515, 525 and 535, respectively. In one embodiment of theinvention, a reply mechanism such as a reply link or other selectionmeans may be associated with each email message that makes up emailthread 500. The user may select one of the reply mechanisms to respondto the associated email message within email thread 500. In theembodiment illustrated in FIG. 5, reply links 515, 525 or 535 areprovided to respond to the email message associated with the reply link.Software code may detect a user selection of the reply link and insert areply form 200 below the message to which the user wants to respond. Inone embodiment, the software code may be embedded within the source codethat defines email thread 500. In an alternative embodiment, thesoftware code may be embedded within a hidden frame or second windowwithin the web browser.

In another embodiment, when a user selects reply link 525 a reply form200 is inserted below email message 520 as illustrated in FIG. 6A. Inyet another embodiment of the invention, the user may click on multiplereply links 515, 525 and/or 535 to open multiple reply forms. As aresult, the user may simultaneously input responses to multiple messagesat the same time.

In a further embodiment of the invention, a reply link may be providedfor each response option supported. For example, a reply link may beprovided for Reply 260 option, Reply-to-All 270 option and Forward 280option. When the user selects one of the response options, a reply form200 may be dynamically inserted below the email message associated withthe reply link. Software code may populate address boxes 240 and 250based on the selected response option. In addition, the user may stilltoggle between the response options within reply form 200 as describedabove.

In an alternative embodiment, the reply links located below each emailmessage within email thread 500 may be replaced with minimized replyforms 215 illustrated in FIG. 2B. As discussed above, in response to auser selection of one of the response options or in response to a userclick in the text box of minimized reply form 215, software code maydetect the user selection or click and dynamically insert reply form 200and/or an expanded text box 220 in place of minimized reply form 215with minimized text box 217. In yet another embodiment, the software mayexpand the minimized reply form 215 by dynamically inserting additionallines into the text box 217 of minimized reply form 215. The user mayselect multiple minimized reply forms 215 within email thread 500,allowing the user respond to multiple email messages within email thread500 at the same time.

In one embodiment of the invention illustrated in FIG. 6B, when a userselects the send button within reply form 200 of email thread 500, thetext of the reply message may be inserted into the thread view. Asillustrated in this embodiment, the messages within thread 500 may beindented or otherwise distinguished to provide the user with a visualrepresentation of each message within email thread 500.

FIG. 7 illustrates a method 700 for updating the recipient addresses ofa response email in response to user selection of a response optionaccording to one embodiment of the invention. In step 710, a reply formfor responding to a first electronic mail (email) message may beprovided to a user. The reply form may include a text box for inputtingthe response message and one or more address boxes for inputting theaddresses of the intended recipients of the response message.

In step 720, a plurality of response options may be provided to theuser. The response options may be part of the reply form or may in someway be associated with the reply form. In one embodiment, the responseoptions include the Reply option, the Reply-to-All option, and theForward option. There are a number of ways in which the response optionsmay be presented to the user, including presenting the response optionsas virtual tabs, links and or buttons. Each response option may beassociated with a subset of the recipients of the email message to whichthe user is responding.

In step 730, a user selection of one of the plurality of responseoptions may be detected. In one embodiment, software code detects theselection of one of the response options. The software code maydetermine which recipient addresses are associated with the selectedresponse option. In one embodiment, the first email message may beparsed to locate the various recipients and sender of the first emailmessage. These email addresses may be associated with various responseoptions.

In step 740, the recipient addresses of the response message are updatedin response to the selected response option. In one embodiment, softwarecode may dynamically update or replace the recipient email addresses ofthe reply form with the recipient addresses associated with the selectedresponse option. This may consist of removing email addresses from thereply form that are not associated with the selected response option.This may also consist of populating the reply form with recipient emailaddresses that are associated with the selected response option.

While the present invention has been described with reference to certainembodiments, those skilled in the art will recognize that variousmodifications may be provided. For example, though the invention hasbeen discussed with reference to various response options, one skilledin the art will recognize that the invention is not limited to theseresponse options. Other response options may be defined that are part ofthe present invention. In addition, there are numerous programminglanguages, including JavaScript, that may be used to implement theinvention. Variations upon and modifications to the embodiments areprovided for by the present invention, which is limited only by thefollowing claims.

1. A graphical user interface on a computer, comprising: a web mailreply form that includes: one or more address fields; an input area forinputting a reply message; and a plurality of response optionsselectable by a user; wherein, in response to selection of a responseoption by a user, one or more of the address fields in the reply formare changed while maintaining the reply message in the input area. 2.The graphical user interface of claim 1, wherein the one or more of theaddress fields in the reply form are changed without requesting a newreply form.
 3. A computer-implemented method, comprising: at a computer,displaying a web mail reply form that includes: one or more addressfields; a text input area with a reply message input by a user of thecomputer; a plurality of response options selectable by the user; and inresponse to selection of a response option by the user, changing one ormore of the address fields in the reply form while maintaining the replymessage.
 4. The method of claim 3, wherein the one or more of theaddress fields in the reply form are changed without requesting a newreply form.
 5. A computer, wherein the computer is configured to:display a web mail reply form that includes: one or more address fields;a text input area with a reply message input by a user of the computer;a plurality of response options selectable by the user; and in responseto selection of a response option by the user, change one or more of theaddress fields in the reply form while maintaining the reply message. 6.The computer of claim 5, wherein the one or more of the address fieldsin the reply form are changed without requesting a new reply form.
 7. Acomputer-program product, comprising: a computer readable storage mediumand a computer program mechanism embedded therein, the computer programmechanism comprising instructions, which when executed by a computer,cause the computer to: display a web mail reply form that includes: oneor more address fields; a text input area with a reply message input bya user of the computer; a plurality of response options selectable bythe user; and in response to selection of a response option by the user,change one or more of the address fields in the reply form whilemaintaining the reply message.
 8. A computer, comprising: means fordisplaying a web mail reply form that includes: one or more addressfields; a text input area with a reply message input by a user of thecomputer; a plurality of response options selectable by the user; and inresponse to selection of a response option by the user, means forchanging one or more of the address fields in the reply form whilemaintaining the reply message.